package site.lanmushan.framework.query.service;

import site.lanmushan.framework.dto.QueryInfo;
import site.lanmushan.framework.mapper.wrapper.QueryWrapper;

import java.util.List;

/**
 * @author Administrator
 */
public interface IBaseService<T> {
    /**
     * 列表查询
     *
     * @param queryInfo
     * @return
     */
    default List selectList(QueryInfo queryInfo) {
        return null;
    }

    default List selectAllList() {
        return null;
    }

    /**
     * @param queryInfo
     * @return
     */
    default List selectPageList(QueryInfo queryInfo) {
        return null;
    }

    /**
     * 根据ID查询
     *
     * @param id
     * @return
     */
    default T selectById(Long id) {
        return null;
    }

    /**
     * 根据Id逻辑删除
     *
     * @param id
     * @return
     */
    default void logicDeleteById(Long id) {
    }
    default void logicDeleteByIds(List<Long> ids) {

    }
    /**
     * 根据Id逻辑删除
     *
     * @param id
     * @return
     */
    default void deleteServiceByIds(List<Long> ids) {

    }
    default void insertService(T entityAo) {

    }
    default int insertServiceList(List<T> entityList){
return 0;
    }

    default void updateService(T entityAo) {

    }


}
